#ifndef __SPINLOCK_H__
#define __SPINLOCK_H__

#include "types.h"

// 自旋锁结构体（确保UART发送线程安全）
struct spinlock {
    uint32 locked;  // 0=未锁定，1=已锁定
    char *name;     // 锁名称（调试用）
};

// 函数声明
void initlock(struct spinlock *lock, const char *name);  // 初始化锁
void acquire(struct spinlock *lock);                     // 获取锁
void release(struct spinlock *lock);                     // 释放锁

#endif
    